/**
 * 
    判断元素是否在视窗内
    根据该对象返回值可以通过以下条件判断元素是否在可视范围内:
    当 DOMRect.top 小于视口高度 且 DOmRect.bottom 大于0
    当 DOMRect.left 小于视口宽度 且 DOmRect.right 大于0
 * @param element 
 * @returns 
 */
export function elementInView(element: HTMLElement | null) {
  if (!element) return true
  const rect = element.getBoundingClientRect()
  const yInView = rect.top < window.innerHeight && rect.bottom > 0
  const xInView = rect.left < window.innerWidth && rect.right > 0
  return yInView && xInView
}
